//默认登录检查
let login = new Vue({
	el : "#header",
	data : {
		isLogin: false, //标记是否登录 用于头部模块信息
		nickName: '匿名', //登录会员的昵称
		loginId: "", //登录会员的ID
		memberInfo:{},

		types :[], //获取的所有的商品类型

		carts:[], //TODO 购物车信息
		cartCount: 0, //购物车总数量
	},
	mounted(){  //页面渲染完成之后执行的函数
		//发送检查登录请求
		axios.post("mem/check").then( result=>{
			if( result.status == 200 && result.data.code == 200){	//请求和响应成功
				this.memberInfo = result.data.data; //登录会员信息
				this.nickName = result.data.data.nickName;  //会员昵称
				this.loginId = result.data.data.mno; //会员编号
				this.isLogin = true; //标识已经登录
				return;
			}
			this.isLogin = false;
		}),
		//发送获取商品类型的请求
		axios.post("type/finds").then( result =>{
			if( result.status == 200 && result.data.code == 200){ //请求和响应都是成功
				this.types = result.data.data;
			}
		})
		//TODO 发送获取登录用户的购物车信息的请求
		axios.post("cart/info").then( result =>{
			if( result.status == 200 && result.data.code == 200){ //请求和响应都是成功
				this.carts = result.data.data; //购物车信息 车编号 和商品号
				this.cartCount = result.data.data.length;
			}
		})
	},
	methods:{
		findByTno(idx, tno){  //通过类型查询商品
			//选中样式
			$choice = $("#search_item>a");
			if($choice.eq(idx).hasClass("selected")){
				return; //避免重复选中
			}
			$choice.removeClass("selected");
			$choice.eq(idx).addClass("selected");
			//TODO 发送类型查询商品信息
			console.log(tno);
			//获取查询条件
			page = 1; //默认第一页
			axios.post("goods/findByFirst", qs.stringify({page, rows, tno})).then(result =>{
				if(result.status == 200 && result.data.code == 200){  //请求和响应都是成功
					vm.$data.goods = result.data.data.rows; //绑定vue对象中data属性的数据集
					vm.$data.totalPage =  Math.ceil(result.data.data.total / rows)   //向上取整 获得页码数
					//开启分页 先引入showpage.js 调用分页功能 showPage( count) + 分页功能
					$("#pagination").showPage(vm.$data.totalPage);
				}
			})
		},
		search(){  //多条件查询请求
			//获取查询条件
			page = 1; //要查询的页码数
			let gname = $.trim($("#search_gname").val());
			let tno = $.trim($("#search_item>a[class='selected']").data("tno"));//获取data-tno属性的值 vm属性:data-tno='type.tno'
			let sprice = $.trim($("#start_price").val());  //价格区间
			let eprice = $.trim($("#end_price").val());
			//多条件查询请求
			axios.post("goods/findByFirst", qs.stringify({page, rows, gname, tno, sprice, eprice})).then(result =>{
				if(result.status == 200 && result.data.code == 200){  //请求和响应都是成功
					vm.$data.goods = result.data.data.rows; //绑定vue对象中data属性的数据集
					vm.$data.totalPage =  Math.ceil(result.data.data.total / rows)   //向上取整 获得页码数
					//开启分页 先引入showpage.js 调用分页功能 showPage( count) + 分页功能
					$("#pagination").showPage( vm.$data.totalPage);
				}
			})
		}
	}
})

//显示提示信息的函数  callback 将来可以传入函数
function showMsg( msg, color, callback){

	//如果界面没有固定提示信息的标签 自定义生成
	if( !document.getElementById("popup_info")){
		let str = `<div class="popup_con"><div class="popup"><p id="popup_info"></p></div></div>`;
		$(document.body).append( $(str));
	}
	//显示提示信息
	$("#popup_info").text(msg).css("color", color);
	$('.popup_con').fadeIn('fast', function() {
		setTimeout(function(){
			$('.popup_con').fadeOut('fast',callback); //淡出后喜欢i细选哪个的函数
		}, 2000)
	});
}